/*
 * @Author: xym100111100 253274870@qq.com
 * @Date: 2024-03-19 10:23:53
 * @LastEditors: xym100111100 253274870@qq.com
 * @LastEditTime: 2024-08-09 10:26:52
 * @FilePath: \RuoYi-Vue3\src\api\system\dept.ts
 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
 */
import request from "@/utils/request";

export type DeptObj = {
  deptId: number;
  parentId?: number;
  deptName?: string;
  orderNum?: number;
  leader?: string;
  phone?: string;
  email?: string;
  status?: string;
  children?: DeptObj[];
};

export type TreeDeptObj = {
  id: number;
  label: string;
  children?: TreeDeptObj[];
};

// 查询部门列表
export function listDept(query?: DeptObj) {
  return request({
    url: "/system/dept/list",
    method: "get",
    params: query,
  });
}

// 查询部门列表（排除节点）
export function listDeptExcludeChild(deptId:number) {
  return request({
    url: "/system/dept/list/exclude/" + deptId,
    method: "get",
  });
}

// 查询部门详细
export function getDept(deptId:number) {
  return request({
    url: "/system/dept/" + deptId,
    method: "get",
  });
}

// 新增部门
export function addDept(data:DeptObj) {
  return request({
    url: "/system/dept",
    method: "post",
    data: data,
  });
}

// 修改部门
export function updateDept(data:DeptObj) {
  return request({
    url: "/system/dept",
    method: "put",
    data: data,
  });
}

// 删除部门
export function delDept(deptId:number) {
  return request({
    url: "/system/dept/" + deptId,
    method: "delete",
  });
}
